Try ... Catch .. Finally คือ คำสั่งการดักจับ และจัดการข้อผิดพลาดของโปรแกรมในรูปแบบต่าง ๆ (Exception Handling) ที่อาจจะเกิดขึ้นในขณะทำงาน หรือในตอนเริ่มต้นการทำงาน เช่น การหารตัวเลขด้วยค่า 0 เป็นต้น
ภาพรวมของ Try .. Catch .. Finally
1. ใช้สำหรับการดักจับ และจัดการข้อผิดพลาดของโปรแกรมทั้งขณะทำงาน (Run Time Process) หรือในขณะเริ่มต้นทำงาน (Init Process)
2. ใน Block ของ Try คือส่วนที่คาดการว่าจะเกิดข้อผิดพลาดเกิดขึ้น
3. ใน Block ของ Catch คือส่วนจัดกาข้อผิดพลาด
4. Finally คือ ส่วนเสริมมีไว้สำหรับการเขียนคำสั่งดำเนินการใด ๆ ก็แล้วแต่ที่ต้องการให้ทำเป็นครั้งสุดท้าย หากเกิดข้อผิดพลาดเกิดขึ้น (และจะทำทุก ๆ ครั้งเสมอ)
5. ใน 1 Try สามารถมี Block Catch ได้มากกว่า 1 Block
ตัวอย่างโปรแกรม
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int a = 5, b = 0;
float result = 0.0F;
try
{
result = a / b;
}
catch (Exception)
{
Console.WriteLine("Fixed to divide by zero.");
}
finally
{
Console.WriteLine( "Result = " + result.ToString() );
Console.WriteLine( "Finally Program Close" );
}
Console.ReadLine();
}
}
}
ผลลัพธ์